package paidaxing.blog.post.service;

import paidaxing.blog.post.entity.PostTags;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;

/**
 * 文章标签关联服务接口
 */
public interface PostTagsService {

    /**
     * 根据ID查询文章标签关联
     * 
     * @param id 关联ID
     * @return 文章标签关联实体
     */
    PostTags queryById(Long id);

    /**
     * 分页查询文章标签关联
     * 
     * @param postTags 查询条件
     * @param pageRequest 分页对象
     * @return 文章标签关联分页结果
     */
    Page<PostTags> queryByPage(PostTags postTags, PageRequest pageRequest);

    /**
     * 插入文章标签关联
     * 
     * @param postTags 文章标签关联实体
     * @return 文章标签关联实体
     */
    PostTags insert(PostTags postTags);

    /**
     * 更新文章标签关联
     * 
     * @param postTags 文章标签关联实体
     * @return 文章标签关联实体
     */
    PostTags update(PostTags postTags);

    /**
     * 根据ID删除文章标签关联
     * 
     * @param id 关联ID
     * @return 是否成功
     */
    boolean deleteById(Long id);

}